module.exports = {
        typeDefs: /* GraphQL */ `enum Action {
  QUERY
  CREATE
  UPDATE
  DELETE
}

type AggregateMenu {
  count: Int!
}

type AggregateOrganization {
  count: Int!
}

type AggregatePremission {
  count: Int!
}

type AggregateResource {
  count: Int!
}

type AggregateRole {
  count: Int!
}

type AggregateUser {
  count: Int!
}

type BatchPayload {
  count: Long!
}

scalar DateTime

scalar Long

type Menu {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
  uri: String
  icon: String
  status: Status!
  parent: Menu
  children(where: MenuWhereInput, orderBy: MenuOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Menu!]
}

type MenuConnection {
  pageInfo: PageInfo!
  edges: [MenuEdge]!
  aggregate: AggregateMenu!
}

input MenuCreateInput {
  name: String
  description: String
  uri: String
  icon: String
  status: Status
  parent: MenuCreateOneWithoutChildrenInput
  children: MenuCreateManyWithoutParentInput
}

input MenuCreateManyInput {
  create: [MenuCreateInput!]
  connect: [MenuWhereUniqueInput!]
}

input MenuCreateManyWithoutParentInput {
  create: [MenuCreateWithoutParentInput!]
  connect: [MenuWhereUniqueInput!]
}

input MenuCreateOneWithoutChildrenInput {
  create: MenuCreateWithoutChildrenInput
  connect: MenuWhereUniqueInput
}

input MenuCreateWithoutChildrenInput {
  name: String
  description: String
  uri: String
  icon: String
  status: Status
  parent: MenuCreateOneWithoutChildrenInput
}

input MenuCreateWithoutParentInput {
  name: String
  description: String
  uri: String
  icon: String
  status: Status
  children: MenuCreateManyWithoutParentInput
}

type MenuEdge {
  node: Menu!
  cursor: String!
}

enum MenuOrderByInput {
  id_ASC
  id_DESC
  createdAt_ASC
  createdAt_DESC
  updatedAt_ASC
  updatedAt_DESC
  name_ASC
  name_DESC
  description_ASC
  description_DESC
  uri_ASC
  uri_DESC
  icon_ASC
  icon_DESC
  status_ASC
  status_DESC
}

type MenuPreviousValues {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
  uri: String
  icon: String
  status: Status!
}

type MenuSubscriptionPayload {
  mutation: MutationType!
  node: Menu
  updatedFields: [String!]
  previousValues: MenuPreviousValues
}

input MenuSubscriptionWhereInput {
  mutation_in: [MutationType!]
  updatedFields_contains: String
  updatedFields_contains_every: [String!]
  updatedFields_contains_some: [String!]
  node: MenuWhereInput
  AND: [MenuSubscriptionWhereInput!]
  OR: [MenuSubscriptionWhereInput!]
  NOT: [MenuSubscriptionWhereInput!]
}

input MenuUpdateDataInput {
  name: String
  description: String
  uri: String
  icon: String
  status: Status
  parent: MenuUpdateOneWithoutChildrenInput
  children: MenuUpdateManyWithoutParentInput
}

input MenuUpdateInput {
  name: String
  description: String
  uri: String
  icon: String
  status: Status
  parent: MenuUpdateOneWithoutChildrenInput
  children: MenuUpdateManyWithoutParentInput
}

input MenuUpdateManyInput {
  create: [MenuCreateInput!]
  update: [MenuUpdateWithWhereUniqueNestedInput!]
  upsert: [MenuUpsertWithWhereUniqueNestedInput!]
  delete: [MenuWhereUniqueInput!]
  connect: [MenuWhereUniqueInput!]
  disconnect: [MenuWhereUniqueInput!]
}

input MenuUpdateManyWithoutParentInput {
  create: [MenuCreateWithoutParentInput!]
  delete: [MenuWhereUniqueInput!]
  connect: [MenuWhereUniqueInput!]
  disconnect: [MenuWhereUniqueInput!]
  update: [MenuUpdateWithWhereUniqueWithoutParentInput!]
  upsert: [MenuUpsertWithWhereUniqueWithoutParentInput!]
}

input MenuUpdateOneWithoutChildrenInput {
  create: MenuCreateWithoutChildrenInput
  update: MenuUpdateWithoutChildrenDataInput
  upsert: MenuUpsertWithoutChildrenInput
  delete: Boolean
  disconnect: Boolean
  connect: MenuWhereUniqueInput
}

input MenuUpdateWithoutChildrenDataInput {
  name: String
  description: String
  uri: String
  icon: String
  status: Status
  parent: MenuUpdateOneWithoutChildrenInput
}

input MenuUpdateWithoutParentDataInput {
  name: String
  description: String
  uri: String
  icon: String
  status: Status
  children: MenuUpdateManyWithoutParentInput
}

input MenuUpdateWithWhereUniqueNestedInput {
  where: MenuWhereUniqueInput!
  data: MenuUpdateDataInput!
}

input MenuUpdateWithWhereUniqueWithoutParentInput {
  where: MenuWhereUniqueInput!
  data: MenuUpdateWithoutParentDataInput!
}

input MenuUpsertWithoutChildrenInput {
  update: MenuUpdateWithoutChildrenDataInput!
  create: MenuCreateWithoutChildrenInput!
}

input MenuUpsertWithWhereUniqueNestedInput {
  where: MenuWhereUniqueInput!
  update: MenuUpdateDataInput!
  create: MenuCreateInput!
}

input MenuUpsertWithWhereUniqueWithoutParentInput {
  where: MenuWhereUniqueInput!
  update: MenuUpdateWithoutParentDataInput!
  create: MenuCreateWithoutParentInput!
}

input MenuWhereInput {
  id: ID
  id_not: ID
  id_in: [ID!]
  id_not_in: [ID!]
  id_lt: ID
  id_lte: ID
  id_gt: ID
  id_gte: ID
  id_contains: ID
  id_not_contains: ID
  id_starts_with: ID
  id_not_starts_with: ID
  id_ends_with: ID
  id_not_ends_with: ID
  createdAt: DateTime
  createdAt_not: DateTime
  createdAt_in: [DateTime!]
  createdAt_not_in: [DateTime!]
  createdAt_lt: DateTime
  createdAt_lte: DateTime
  createdAt_gt: DateTime
  createdAt_gte: DateTime
  updatedAt: DateTime
  updatedAt_not: DateTime
  updatedAt_in: [DateTime!]
  updatedAt_not_in: [DateTime!]
  updatedAt_lt: DateTime
  updatedAt_lte: DateTime
  updatedAt_gt: DateTime
  updatedAt_gte: DateTime
  name: String
  name_not: String
  name_in: [String!]
  name_not_in: [String!]
  name_lt: String
  name_lte: String
  name_gt: String
  name_gte: String
  name_contains: String
  name_not_contains: String
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  description: String
  description_not: String
  description_in: [String!]
  description_not_in: [String!]
  description_lt: String
  description_lte: String
  description_gt: String
  description_gte: String
  description_contains: String
  description_not_contains: String
  description_starts_with: String
  description_not_starts_with: String
  description_ends_with: String
  description_not_ends_with: String
  uri: String
  uri_not: String
  uri_in: [String!]
  uri_not_in: [String!]
  uri_lt: String
  uri_lte: String
  uri_gt: String
  uri_gte: String
  uri_contains: String
  uri_not_contains: String
  uri_starts_with: String
  uri_not_starts_with: String
  uri_ends_with: String
  uri_not_ends_with: String
  icon: String
  icon_not: String
  icon_in: [String!]
  icon_not_in: [String!]
  icon_lt: String
  icon_lte: String
  icon_gt: String
  icon_gte: String
  icon_contains: String
  icon_not_contains: String
  icon_starts_with: String
  icon_not_starts_with: String
  icon_ends_with: String
  icon_not_ends_with: String
  status: Status
  status_not: Status
  status_in: [Status!]
  status_not_in: [Status!]
  parent: MenuWhereInput
  children_every: MenuWhereInput
  children_some: MenuWhereInput
  children_none: MenuWhereInput
  AND: [MenuWhereInput!]
  OR: [MenuWhereInput!]
  NOT: [MenuWhereInput!]
}

input MenuWhereUniqueInput {
  id: ID
}

type Mutation {
  createMenu(data: MenuCreateInput!): Menu!
  updateMenu(data: MenuUpdateInput!, where: MenuWhereUniqueInput!): Menu
  updateManyMenus(data: MenuUpdateInput!, where: MenuWhereInput): BatchPayload!
  upsertMenu(where: MenuWhereUniqueInput!, create: MenuCreateInput!, update: MenuUpdateInput!): Menu!
  deleteMenu(where: MenuWhereUniqueInput!): Menu
  deleteManyMenus(where: MenuWhereInput): BatchPayload!
  createOrganization(data: OrganizationCreateInput!): Organization!
  updateOrganization(data: OrganizationUpdateInput!, where: OrganizationWhereUniqueInput!): Organization
  updateManyOrganizations(data: OrganizationUpdateInput!, where: OrganizationWhereInput): BatchPayload!
  upsertOrganization(where: OrganizationWhereUniqueInput!, create: OrganizationCreateInput!, update: OrganizationUpdateInput!): Organization!
  deleteOrganization(where: OrganizationWhereUniqueInput!): Organization
  deleteManyOrganizations(where: OrganizationWhereInput): BatchPayload!
  createPremission(data: PremissionCreateInput!): Premission!
  updatePremission(data: PremissionUpdateInput!, where: PremissionWhereUniqueInput!): Premission
  updateManyPremissions(data: PremissionUpdateInput!, where: PremissionWhereInput): BatchPayload!
  upsertPremission(where: PremissionWhereUniqueInput!, create: PremissionCreateInput!, update: PremissionUpdateInput!): Premission!
  deletePremission(where: PremissionWhereUniqueInput!): Premission
  deleteManyPremissions(where: PremissionWhereInput): BatchPayload!
  createResource(data: ResourceCreateInput!): Resource!
  updateResource(data: ResourceUpdateInput!, where: ResourceWhereUniqueInput!): Resource
  updateManyResources(data: ResourceUpdateInput!, where: ResourceWhereInput): BatchPayload!
  upsertResource(where: ResourceWhereUniqueInput!, create: ResourceCreateInput!, update: ResourceUpdateInput!): Resource!
  deleteResource(where: ResourceWhereUniqueInput!): Resource
  deleteManyResources(where: ResourceWhereInput): BatchPayload!
  createRole(data: RoleCreateInput!): Role!
  updateRole(data: RoleUpdateInput!, where: RoleWhereUniqueInput!): Role
  updateManyRoles(data: RoleUpdateInput!, where: RoleWhereInput): BatchPayload!
  upsertRole(where: RoleWhereUniqueInput!, create: RoleCreateInput!, update: RoleUpdateInput!): Role!
  deleteRole(where: RoleWhereUniqueInput!): Role
  deleteManyRoles(where: RoleWhereInput): BatchPayload!
  createUser(data: UserCreateInput!): User!
  updateUser(data: UserUpdateInput!, where: UserWhereUniqueInput!): User
  updateManyUsers(data: UserUpdateInput!, where: UserWhereInput): BatchPayload!
  upsertUser(where: UserWhereUniqueInput!, create: UserCreateInput!, update: UserUpdateInput!): User!
  deleteUser(where: UserWhereUniqueInput!): User
  deleteManyUsers(where: UserWhereInput): BatchPayload!
}

enum MutationType {
  CREATED
  UPDATED
  DELETED
}

interface Node {
  id: ID!
}

type Organization {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
  status: Status!
  parent: Organization
  children(where: OrganizationWhereInput, orderBy: OrganizationOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Organization!]
}

type OrganizationConnection {
  pageInfo: PageInfo!
  edges: [OrganizationEdge]!
  aggregate: AggregateOrganization!
}

input OrganizationCreateInput {
  name: String
  description: String
  status: Status
  parent: OrganizationCreateOneWithoutChildrenInput
  children: OrganizationCreateManyWithoutParentInput
}

input OrganizationCreateManyInput {
  create: [OrganizationCreateInput!]
  connect: [OrganizationWhereUniqueInput!]
}

input OrganizationCreateManyWithoutParentInput {
  create: [OrganizationCreateWithoutParentInput!]
  connect: [OrganizationWhereUniqueInput!]
}

input OrganizationCreateOneWithoutChildrenInput {
  create: OrganizationCreateWithoutChildrenInput
  connect: OrganizationWhereUniqueInput
}

input OrganizationCreateWithoutChildrenInput {
  name: String
  description: String
  status: Status
  parent: OrganizationCreateOneWithoutChildrenInput
}

input OrganizationCreateWithoutParentInput {
  name: String
  description: String
  status: Status
  children: OrganizationCreateManyWithoutParentInput
}

type OrganizationEdge {
  node: Organization!
  cursor: String!
}

enum OrganizationOrderByInput {
  id_ASC
  id_DESC
  createdAt_ASC
  createdAt_DESC
  updatedAt_ASC
  updatedAt_DESC
  name_ASC
  name_DESC
  description_ASC
  description_DESC
  status_ASC
  status_DESC
}

type OrganizationPreviousValues {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
  status: Status!
}

type OrganizationSubscriptionPayload {
  mutation: MutationType!
  node: Organization
  updatedFields: [String!]
  previousValues: OrganizationPreviousValues
}

input OrganizationSubscriptionWhereInput {
  mutation_in: [MutationType!]
  updatedFields_contains: String
  updatedFields_contains_every: [String!]
  updatedFields_contains_some: [String!]
  node: OrganizationWhereInput
  AND: [OrganizationSubscriptionWhereInput!]
  OR: [OrganizationSubscriptionWhereInput!]
  NOT: [OrganizationSubscriptionWhereInput!]
}

input OrganizationUpdateDataInput {
  name: String
  description: String
  status: Status
  parent: OrganizationUpdateOneWithoutChildrenInput
  children: OrganizationUpdateManyWithoutParentInput
}

input OrganizationUpdateInput {
  name: String
  description: String
  status: Status
  parent: OrganizationUpdateOneWithoutChildrenInput
  children: OrganizationUpdateManyWithoutParentInput
}

input OrganizationUpdateManyInput {
  create: [OrganizationCreateInput!]
  update: [OrganizationUpdateWithWhereUniqueNestedInput!]
  upsert: [OrganizationUpsertWithWhereUniqueNestedInput!]
  delete: [OrganizationWhereUniqueInput!]
  connect: [OrganizationWhereUniqueInput!]
  disconnect: [OrganizationWhereUniqueInput!]
}

input OrganizationUpdateManyWithoutParentInput {
  create: [OrganizationCreateWithoutParentInput!]
  delete: [OrganizationWhereUniqueInput!]
  connect: [OrganizationWhereUniqueInput!]
  disconnect: [OrganizationWhereUniqueInput!]
  update: [OrganizationUpdateWithWhereUniqueWithoutParentInput!]
  upsert: [OrganizationUpsertWithWhereUniqueWithoutParentInput!]
}

input OrganizationUpdateOneWithoutChildrenInput {
  create: OrganizationCreateWithoutChildrenInput
  update: OrganizationUpdateWithoutChildrenDataInput
  upsert: OrganizationUpsertWithoutChildrenInput
  delete: Boolean
  disconnect: Boolean
  connect: OrganizationWhereUniqueInput
}

input OrganizationUpdateWithoutChildrenDataInput {
  name: String
  description: String
  status: Status
  parent: OrganizationUpdateOneWithoutChildrenInput
}

input OrganizationUpdateWithoutParentDataInput {
  name: String
  description: String
  status: Status
  children: OrganizationUpdateManyWithoutParentInput
}

input OrganizationUpdateWithWhereUniqueNestedInput {
  where: OrganizationWhereUniqueInput!
  data: OrganizationUpdateDataInput!
}

input OrganizationUpdateWithWhereUniqueWithoutParentInput {
  where: OrganizationWhereUniqueInput!
  data: OrganizationUpdateWithoutParentDataInput!
}

input OrganizationUpsertWithoutChildrenInput {
  update: OrganizationUpdateWithoutChildrenDataInput!
  create: OrganizationCreateWithoutChildrenInput!
}

input OrganizationUpsertWithWhereUniqueNestedInput {
  where: OrganizationWhereUniqueInput!
  update: OrganizationUpdateDataInput!
  create: OrganizationCreateInput!
}

input OrganizationUpsertWithWhereUniqueWithoutParentInput {
  where: OrganizationWhereUniqueInput!
  update: OrganizationUpdateWithoutParentDataInput!
  create: OrganizationCreateWithoutParentInput!
}

input OrganizationWhereInput {
  id: ID
  id_not: ID
  id_in: [ID!]
  id_not_in: [ID!]
  id_lt: ID
  id_lte: ID
  id_gt: ID
  id_gte: ID
  id_contains: ID
  id_not_contains: ID
  id_starts_with: ID
  id_not_starts_with: ID
  id_ends_with: ID
  id_not_ends_with: ID
  createdAt: DateTime
  createdAt_not: DateTime
  createdAt_in: [DateTime!]
  createdAt_not_in: [DateTime!]
  createdAt_lt: DateTime
  createdAt_lte: DateTime
  createdAt_gt: DateTime
  createdAt_gte: DateTime
  updatedAt: DateTime
  updatedAt_not: DateTime
  updatedAt_in: [DateTime!]
  updatedAt_not_in: [DateTime!]
  updatedAt_lt: DateTime
  updatedAt_lte: DateTime
  updatedAt_gt: DateTime
  updatedAt_gte: DateTime
  name: String
  name_not: String
  name_in: [String!]
  name_not_in: [String!]
  name_lt: String
  name_lte: String
  name_gt: String
  name_gte: String
  name_contains: String
  name_not_contains: String
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  description: String
  description_not: String
  description_in: [String!]
  description_not_in: [String!]
  description_lt: String
  description_lte: String
  description_gt: String
  description_gte: String
  description_contains: String
  description_not_contains: String
  description_starts_with: String
  description_not_starts_with: String
  description_ends_with: String
  description_not_ends_with: String
  status: Status
  status_not: Status
  status_in: [Status!]
  status_not_in: [Status!]
  parent: OrganizationWhereInput
  children_every: OrganizationWhereInput
  children_some: OrganizationWhereInput
  children_none: OrganizationWhereInput
  AND: [OrganizationWhereInput!]
  OR: [OrganizationWhereInput!]
  NOT: [OrganizationWhereInput!]
}

input OrganizationWhereUniqueInput {
  id: ID
}

type PageInfo {
  hasNextPage: Boolean!
  hasPreviousPage: Boolean!
  startCursor: String
  endCursor: String
}

type Premission {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
  action: Action!
  resource: Resource!
}

type PremissionConnection {
  pageInfo: PageInfo!
  edges: [PremissionEdge]!
  aggregate: AggregatePremission!
}

input PremissionCreateInput {
  name: String
  description: String
  action: Action!
  resource: ResourceCreateOneInput!
}

input PremissionCreateManyInput {
  create: [PremissionCreateInput!]
  connect: [PremissionWhereUniqueInput!]
}

type PremissionEdge {
  node: Premission!
  cursor: String!
}

enum PremissionOrderByInput {
  id_ASC
  id_DESC
  createdAt_ASC
  createdAt_DESC
  updatedAt_ASC
  updatedAt_DESC
  name_ASC
  name_DESC
  description_ASC
  description_DESC
  action_ASC
  action_DESC
}

type PremissionPreviousValues {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
  action: Action!
}

type PremissionSubscriptionPayload {
  mutation: MutationType!
  node: Premission
  updatedFields: [String!]
  previousValues: PremissionPreviousValues
}

input PremissionSubscriptionWhereInput {
  mutation_in: [MutationType!]
  updatedFields_contains: String
  updatedFields_contains_every: [String!]
  updatedFields_contains_some: [String!]
  node: PremissionWhereInput
  AND: [PremissionSubscriptionWhereInput!]
  OR: [PremissionSubscriptionWhereInput!]
  NOT: [PremissionSubscriptionWhereInput!]
}

input PremissionUpdateDataInput {
  name: String
  description: String
  action: Action
  resource: ResourceUpdateOneRequiredInput
}

input PremissionUpdateInput {
  name: String
  description: String
  action: Action
  resource: ResourceUpdateOneRequiredInput
}

input PremissionUpdateManyInput {
  create: [PremissionCreateInput!]
  update: [PremissionUpdateWithWhereUniqueNestedInput!]
  upsert: [PremissionUpsertWithWhereUniqueNestedInput!]
  delete: [PremissionWhereUniqueInput!]
  connect: [PremissionWhereUniqueInput!]
  disconnect: [PremissionWhereUniqueInput!]
}

input PremissionUpdateWithWhereUniqueNestedInput {
  where: PremissionWhereUniqueInput!
  data: PremissionUpdateDataInput!
}

input PremissionUpsertWithWhereUniqueNestedInput {
  where: PremissionWhereUniqueInput!
  update: PremissionUpdateDataInput!
  create: PremissionCreateInput!
}

input PremissionWhereInput {
  id: ID
  id_not: ID
  id_in: [ID!]
  id_not_in: [ID!]
  id_lt: ID
  id_lte: ID
  id_gt: ID
  id_gte: ID
  id_contains: ID
  id_not_contains: ID
  id_starts_with: ID
  id_not_starts_with: ID
  id_ends_with: ID
  id_not_ends_with: ID
  createdAt: DateTime
  createdAt_not: DateTime
  createdAt_in: [DateTime!]
  createdAt_not_in: [DateTime!]
  createdAt_lt: DateTime
  createdAt_lte: DateTime
  createdAt_gt: DateTime
  createdAt_gte: DateTime
  updatedAt: DateTime
  updatedAt_not: DateTime
  updatedAt_in: [DateTime!]
  updatedAt_not_in: [DateTime!]
  updatedAt_lt: DateTime
  updatedAt_lte: DateTime
  updatedAt_gt: DateTime
  updatedAt_gte: DateTime
  name: String
  name_not: String
  name_in: [String!]
  name_not_in: [String!]
  name_lt: String
  name_lte: String
  name_gt: String
  name_gte: String
  name_contains: String
  name_not_contains: String
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  description: String
  description_not: String
  description_in: [String!]
  description_not_in: [String!]
  description_lt: String
  description_lte: String
  description_gt: String
  description_gte: String
  description_contains: String
  description_not_contains: String
  description_starts_with: String
  description_not_starts_with: String
  description_ends_with: String
  description_not_ends_with: String
  action: Action
  action_not: Action
  action_in: [Action!]
  action_not_in: [Action!]
  resource: ResourceWhereInput
  AND: [PremissionWhereInput!]
  OR: [PremissionWhereInput!]
  NOT: [PremissionWhereInput!]
}

input PremissionWhereUniqueInput {
  id: ID
}

type Query {
  menu(where: MenuWhereUniqueInput!): Menu
  menus(where: MenuWhereInput, orderBy: MenuOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Menu]!
  menusConnection(where: MenuWhereInput, orderBy: MenuOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): MenuConnection!
  organization(where: OrganizationWhereUniqueInput!): Organization
  organizations(where: OrganizationWhereInput, orderBy: OrganizationOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Organization]!
  organizationsConnection(where: OrganizationWhereInput, orderBy: OrganizationOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): OrganizationConnection!
  premission(where: PremissionWhereUniqueInput!): Premission
  premissions(where: PremissionWhereInput, orderBy: PremissionOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Premission]!
  premissionsConnection(where: PremissionWhereInput, orderBy: PremissionOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): PremissionConnection!
  resource(where: ResourceWhereUniqueInput!): Resource
  resources(where: ResourceWhereInput, orderBy: ResourceOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Resource]!
  resourcesConnection(where: ResourceWhereInput, orderBy: ResourceOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): ResourceConnection!
  role(where: RoleWhereUniqueInput!): Role
  roles(where: RoleWhereInput, orderBy: RoleOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Role]!
  rolesConnection(where: RoleWhereInput, orderBy: RoleOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): RoleConnection!
  user(where: UserWhereUniqueInput!): User
  users(where: UserWhereInput, orderBy: UserOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [User]!
  usersConnection(where: UserWhereInput, orderBy: UserOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): UserConnection!
  node(id: ID!): Node
}

type Resource {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
}

type ResourceConnection {
  pageInfo: PageInfo!
  edges: [ResourceEdge]!
  aggregate: AggregateResource!
}

input ResourceCreateInput {
  name: String
  description: String
}

input ResourceCreateOneInput {
  create: ResourceCreateInput
  connect: ResourceWhereUniqueInput
}

type ResourceEdge {
  node: Resource!
  cursor: String!
}

enum ResourceOrderByInput {
  id_ASC
  id_DESC
  createdAt_ASC
  createdAt_DESC
  updatedAt_ASC
  updatedAt_DESC
  name_ASC
  name_DESC
  description_ASC
  description_DESC
}

type ResourcePreviousValues {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String
  description: String
}

type ResourceSubscriptionPayload {
  mutation: MutationType!
  node: Resource
  updatedFields: [String!]
  previousValues: ResourcePreviousValues
}

input ResourceSubscriptionWhereInput {
  mutation_in: [MutationType!]
  updatedFields_contains: String
  updatedFields_contains_every: [String!]
  updatedFields_contains_some: [String!]
  node: ResourceWhereInput
  AND: [ResourceSubscriptionWhereInput!]
  OR: [ResourceSubscriptionWhereInput!]
  NOT: [ResourceSubscriptionWhereInput!]
}

input ResourceUpdateDataInput {
  name: String
  description: String
}

input ResourceUpdateInput {
  name: String
  description: String
}

input ResourceUpdateOneRequiredInput {
  create: ResourceCreateInput
  update: ResourceUpdateDataInput
  upsert: ResourceUpsertNestedInput
  connect: ResourceWhereUniqueInput
}

input ResourceUpsertNestedInput {
  update: ResourceUpdateDataInput!
  create: ResourceCreateInput!
}

input ResourceWhereInput {
  id: ID
  id_not: ID
  id_in: [ID!]
  id_not_in: [ID!]
  id_lt: ID
  id_lte: ID
  id_gt: ID
  id_gte: ID
  id_contains: ID
  id_not_contains: ID
  id_starts_with: ID
  id_not_starts_with: ID
  id_ends_with: ID
  id_not_ends_with: ID
  createdAt: DateTime
  createdAt_not: DateTime
  createdAt_in: [DateTime!]
  createdAt_not_in: [DateTime!]
  createdAt_lt: DateTime
  createdAt_lte: DateTime
  createdAt_gt: DateTime
  createdAt_gte: DateTime
  updatedAt: DateTime
  updatedAt_not: DateTime
  updatedAt_in: [DateTime!]
  updatedAt_not_in: [DateTime!]
  updatedAt_lt: DateTime
  updatedAt_lte: DateTime
  updatedAt_gt: DateTime
  updatedAt_gte: DateTime
  name: String
  name_not: String
  name_in: [String!]
  name_not_in: [String!]
  name_lt: String
  name_lte: String
  name_gt: String
  name_gte: String
  name_contains: String
  name_not_contains: String
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  description: String
  description_not: String
  description_in: [String!]
  description_not_in: [String!]
  description_lt: String
  description_lte: String
  description_gt: String
  description_gte: String
  description_contains: String
  description_not_contains: String
  description_starts_with: String
  description_not_starts_with: String
  description_ends_with: String
  description_not_ends_with: String
  AND: [ResourceWhereInput!]
  OR: [ResourceWhereInput!]
  NOT: [ResourceWhereInput!]
}

input ResourceWhereUniqueInput {
  id: ID
}

type Role {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String!
  description: String
  status: Status!
  premissions(where: PremissionWhereInput, orderBy: PremissionOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Premission!]
  menus(where: MenuWhereInput, orderBy: MenuOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Menu!]
}

type RoleConnection {
  pageInfo: PageInfo!
  edges: [RoleEdge]!
  aggregate: AggregateRole!
}

input RoleCreateInput {
  name: String!
  description: String
  status: Status
  premissions: PremissionCreateManyInput
  menus: MenuCreateManyInput
}

input RoleCreateManyInput {
  create: [RoleCreateInput!]
  connect: [RoleWhereUniqueInput!]
}

type RoleEdge {
  node: Role!
  cursor: String!
}

enum RoleOrderByInput {
  id_ASC
  id_DESC
  createdAt_ASC
  createdAt_DESC
  updatedAt_ASC
  updatedAt_DESC
  name_ASC
  name_DESC
  description_ASC
  description_DESC
  status_ASC
  status_DESC
}

type RolePreviousValues {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String!
  description: String
  status: Status!
}

type RoleSubscriptionPayload {
  mutation: MutationType!
  node: Role
  updatedFields: [String!]
  previousValues: RolePreviousValues
}

input RoleSubscriptionWhereInput {
  mutation_in: [MutationType!]
  updatedFields_contains: String
  updatedFields_contains_every: [String!]
  updatedFields_contains_some: [String!]
  node: RoleWhereInput
  AND: [RoleSubscriptionWhereInput!]
  OR: [RoleSubscriptionWhereInput!]
  NOT: [RoleSubscriptionWhereInput!]
}

input RoleUpdateDataInput {
  name: String
  description: String
  status: Status
  premissions: PremissionUpdateManyInput
  menus: MenuUpdateManyInput
}

input RoleUpdateInput {
  name: String
  description: String
  status: Status
  premissions: PremissionUpdateManyInput
  menus: MenuUpdateManyInput
}

input RoleUpdateManyInput {
  create: [RoleCreateInput!]
  update: [RoleUpdateWithWhereUniqueNestedInput!]
  upsert: [RoleUpsertWithWhereUniqueNestedInput!]
  delete: [RoleWhereUniqueInput!]
  connect: [RoleWhereUniqueInput!]
  disconnect: [RoleWhereUniqueInput!]
}

input RoleUpdateWithWhereUniqueNestedInput {
  where: RoleWhereUniqueInput!
  data: RoleUpdateDataInput!
}

input RoleUpsertWithWhereUniqueNestedInput {
  where: RoleWhereUniqueInput!
  update: RoleUpdateDataInput!
  create: RoleCreateInput!
}

input RoleWhereInput {
  id: ID
  id_not: ID
  id_in: [ID!]
  id_not_in: [ID!]
  id_lt: ID
  id_lte: ID
  id_gt: ID
  id_gte: ID
  id_contains: ID
  id_not_contains: ID
  id_starts_with: ID
  id_not_starts_with: ID
  id_ends_with: ID
  id_not_ends_with: ID
  createdAt: DateTime
  createdAt_not: DateTime
  createdAt_in: [DateTime!]
  createdAt_not_in: [DateTime!]
  createdAt_lt: DateTime
  createdAt_lte: DateTime
  createdAt_gt: DateTime
  createdAt_gte: DateTime
  updatedAt: DateTime
  updatedAt_not: DateTime
  updatedAt_in: [DateTime!]
  updatedAt_not_in: [DateTime!]
  updatedAt_lt: DateTime
  updatedAt_lte: DateTime
  updatedAt_gt: DateTime
  updatedAt_gte: DateTime
  name: String
  name_not: String
  name_in: [String!]
  name_not_in: [String!]
  name_lt: String
  name_lte: String
  name_gt: String
  name_gte: String
  name_contains: String
  name_not_contains: String
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  description: String
  description_not: String
  description_in: [String!]
  description_not_in: [String!]
  description_lt: String
  description_lte: String
  description_gt: String
  description_gte: String
  description_contains: String
  description_not_contains: String
  description_starts_with: String
  description_not_starts_with: String
  description_ends_with: String
  description_not_ends_with: String
  status: Status
  status_not: Status
  status_in: [Status!]
  status_not_in: [Status!]
  premissions_every: PremissionWhereInput
  premissions_some: PremissionWhereInput
  premissions_none: PremissionWhereInput
  menus_every: MenuWhereInput
  menus_some: MenuWhereInput
  menus_none: MenuWhereInput
  AND: [RoleWhereInput!]
  OR: [RoleWhereInput!]
  NOT: [RoleWhereInput!]
}

input RoleWhereUniqueInput {
  id: ID
  name: String
}

enum Status {
  ENABLE
  DISABLE
  DELETE
}

type Subscription {
  menu(where: MenuSubscriptionWhereInput): MenuSubscriptionPayload
  organization(where: OrganizationSubscriptionWhereInput): OrganizationSubscriptionPayload
  premission(where: PremissionSubscriptionWhereInput): PremissionSubscriptionPayload
  resource(where: ResourceSubscriptionWhereInput): ResourceSubscriptionPayload
  role(where: RoleSubscriptionWhereInput): RoleSubscriptionPayload
  user(where: UserSubscriptionWhereInput): UserSubscriptionPayload
}

type User {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String!
  realname: String
  phone: String
  email: String
  password: String!
  status: Status!
  roles(where: RoleWhereInput, orderBy: RoleOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Role!]
  organizations(where: OrganizationWhereInput, orderBy: OrganizationOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Organization!]
}

type UserConnection {
  pageInfo: PageInfo!
  edges: [UserEdge]!
  aggregate: AggregateUser!
}

input UserCreateInput {
  name: String!
  realname: String
  phone: String
  email: String
  password: String!
  status: Status
  roles: RoleCreateManyInput
  organizations: OrganizationCreateManyInput
}

type UserEdge {
  node: User!
  cursor: String!
}

enum UserOrderByInput {
  id_ASC
  id_DESC
  createdAt_ASC
  createdAt_DESC
  updatedAt_ASC
  updatedAt_DESC
  name_ASC
  name_DESC
  realname_ASC
  realname_DESC
  phone_ASC
  phone_DESC
  email_ASC
  email_DESC
  password_ASC
  password_DESC
  status_ASC
  status_DESC
}

type UserPreviousValues {
  id: ID!
  createdAt: DateTime!
  updatedAt: DateTime!
  name: String!
  realname: String
  phone: String
  email: String
  password: String!
  status: Status!
}

type UserSubscriptionPayload {
  mutation: MutationType!
  node: User
  updatedFields: [String!]
  previousValues: UserPreviousValues
}

input UserSubscriptionWhereInput {
  mutation_in: [MutationType!]
  updatedFields_contains: String
  updatedFields_contains_every: [String!]
  updatedFields_contains_some: [String!]
  node: UserWhereInput
  AND: [UserSubscriptionWhereInput!]
  OR: [UserSubscriptionWhereInput!]
  NOT: [UserSubscriptionWhereInput!]
}

input UserUpdateInput {
  name: String
  realname: String
  phone: String
  email: String
  password: String
  status: Status
  roles: RoleUpdateManyInput
  organizations: OrganizationUpdateManyInput
}

input UserWhereInput {
  id: ID
  id_not: ID
  id_in: [ID!]
  id_not_in: [ID!]
  id_lt: ID
  id_lte: ID
  id_gt: ID
  id_gte: ID
  id_contains: ID
  id_not_contains: ID
  id_starts_with: ID
  id_not_starts_with: ID
  id_ends_with: ID
  id_not_ends_with: ID
  createdAt: DateTime
  createdAt_not: DateTime
  createdAt_in: [DateTime!]
  createdAt_not_in: [DateTime!]
  createdAt_lt: DateTime
  createdAt_lte: DateTime
  createdAt_gt: DateTime
  createdAt_gte: DateTime
  updatedAt: DateTime
  updatedAt_not: DateTime
  updatedAt_in: [DateTime!]
  updatedAt_not_in: [DateTime!]
  updatedAt_lt: DateTime
  updatedAt_lte: DateTime
  updatedAt_gt: DateTime
  updatedAt_gte: DateTime
  name: String
  name_not: String
  name_in: [String!]
  name_not_in: [String!]
  name_lt: String
  name_lte: String
  name_gt: String
  name_gte: String
  name_contains: String
  name_not_contains: String
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  realname: String
  realname_not: String
  realname_in: [String!]
  realname_not_in: [String!]
  realname_lt: String
  realname_lte: String
  realname_gt: String
  realname_gte: String
  realname_contains: String
  realname_not_contains: String
  realname_starts_with: String
  realname_not_starts_with: String
  realname_ends_with: String
  realname_not_ends_with: String
  phone: String
  phone_not: String
  phone_in: [String!]
  phone_not_in: [String!]
  phone_lt: String
  phone_lte: String
  phone_gt: String
  phone_gte: String
  phone_contains: String
  phone_not_contains: String
  phone_starts_with: String
  phone_not_starts_with: String
  phone_ends_with: String
  phone_not_ends_with: String
  email: String
  email_not: String
  email_in: [String!]
  email_not_in: [String!]
  email_lt: String
  email_lte: String
  email_gt: String
  email_gte: String
  email_contains: String
  email_not_contains: String
  email_starts_with: String
  email_not_starts_with: String
  email_ends_with: String
  email_not_ends_with: String
  password: String
  password_not: String
  password_in: [String!]
  password_not_in: [String!]
  password_lt: String
  password_lte: String
  password_gt: String
  password_gte: String
  password_contains: String
  password_not_contains: String
  password_starts_with: String
  password_not_starts_with: String
  password_ends_with: String
  password_not_ends_with: String
  status: Status
  status_not: Status
  status_in: [Status!]
  status_not_in: [Status!]
  roles_every: RoleWhereInput
  roles_some: RoleWhereInput
  roles_none: RoleWhereInput
  organizations_every: OrganizationWhereInput
  organizations_some: OrganizationWhereInput
  organizations_none: OrganizationWhereInput
  AND: [UserWhereInput!]
  OR: [UserWhereInput!]
  NOT: [UserWhereInput!]
}

input UserWhereUniqueInput {
  id: ID
  name: String
  phone: String
  email: String
}
`
      }
    